home *** CD-ROM | disk | FTP | other *** search
/ The X-Philes (2nd Revision) / The X-Philes Number 1 (1995).iso / xphiles / hp48_1 / navigati < prev    next >
Text File  |  1995-03-31  |  5KB  |  158 lines

  1. Article 5673 of comp.sys.handhelds:
  2. Path: en.ecn.purdue.edu!noose.ecn.purdue.edu!news.cs.indiana.edu!news.nd.edu!spool.mu.edu!cs.umn.edu!uc!noc.MR.NET!gacvx2.gac.edu!hhdist
  3. From: nadg-4@student.cs.chalmers.se (Lab. - konto Nadg-4)
  4. Newsgroups: comp.sys.handhelds
  5. Subject: <None>
  6. Message-ID: <9104071821.AA16887@piggy.cs.chalmers.se>
  7. Date: 7 Apr 91 18:21:31 GMT
  8. Article-I.D.: piggy.9104071821.AA16887
  9. Lines: 143
  10. Return-path: <nadg-4@student.cs.chalmers.se>
  11. To: handhelds@gac.edu
  12.  
  13.  
  14. This is a navigation program that I have wrote. The equation's
  15. is taken from Mr James Gentles's HAM routine's and so fare I
  16. have found them correct. The NAV program takes the boat- (car-)
  17. speed, your current position and future position. Observe that
  18. South and West are negative. You can put the declination in DECL.
  19. I have chosen the units so that they suit me but they are fairly
  20. easy to change.
  21.  
  22. Happy navigation
  23.  
  24. Jonas Linden
  25.  
  26. PS Is there a waterproof case for the HP48SX?
  27.  
  28. O  /
  29.  \/
  30.  /\~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  31. O  \
  32.  
  33. %%HP: T(3)A(R)F(.);
  34. DIR
  35.   NAV
  36.     \<< RCLF -3 SF
  37. DEG \-> f
  38.       \<<
  39.         IFERR
  40. NINPUT CALC H.M _
  41. 'Time' \->TAG ROT
  42. DECL NEG + \^o _
  43. 'Course' \->TAG ROT
  44. nmi _ 'Dist' \->TAG
  45. ROT NGRAPH 0 WAIT
  46. DROP 20 DOERR
  47.         THEN f STOF
  48. 'PPAR' PURGE ERASE
  49.         END
  50.       \>>
  51.     \>>
  52.   DECL -1
  53.   NINPUT
  54.     \<< CLLCD
  55. "Your speed in knot"
  56. { ":Speed:" { 1 0 }
  57. V } INPUT OBJ\-> 1 2
  58.       FOR j j \->STR
  59. " position DD.MMSS
  60. S and W are negative"
  61. + {
  62. ":Latitude :
  63. :Longitude:"
  64. { 1 0 } V } INPUT
  65. OBJ\->
  66.       NEXT
  67.     \>>
  68.   CALC
  69.     \<< HMS\-> 4 ROLL
  70. HMS\-> 4 ROLL HMS\-> 4
  71. ROLL HMS\-> SWAP 4
  72. ROLL -
  73.       CASE DUP 180
  74. >
  75.         THEN 360 -
  76.         END DUP
  77. -180 <
  78.         THEN 360 +
  79.         END DUP 0
  80. ==
  81.         THEN
  82. .000001 +
  83.         END
  84.       END \-> lah laa
  85. dif
  86.       \<< 'ACOS(SIN(
  87. lah)*SIN(laa)+COS(
  88. lah)*COS(laa)*COS(
  89. dif))' DUP 180 / \pi
  90. * 6378.388 * 1.852
  91. / 2 RND SWAP \-> dis
  92. 'ACOS((SIN(laa)-SIN
  93. (lah)*COS(dis))/(
  94. COS(lah)*SIN(dis)))
  95. '
  96.         IF dif 0 >
  97.         THEN NEG
  98. 360 +
  99.         END 2 RND
  100. ROT ROT DUP ROT /
  101. UVAL \->HMS 2 RND
  102.       \>>
  103.     \>>
  104.   NGRAPH
  105.     \<< 3 PICK ROT
  106. ROT SWAP 1 3
  107.       START 1 \->GROB
  108. ROT
  109.       NEXT COMPASS
  110. { # 0d # 15d } ROT
  111. GOR SWAP { # 0d
  112. # 30d } SWAP GOR
  113. SWAP { # 0d # 45d }
  114. SWAP GOR PICT STO {
  115. # 0d # 0d } PVIEW
  116. UVAL NEG 90 + DUP
  117. COS 1.6 * 3.5 +
  118. SWAP SIN 1.6 * R\->C
  119. (3.5,0) LINE 0
  120. FREEZE
  121.     \>>
  122.   COMPASS  @ Remove all line feed's in GROB!!!
  123. GROB 131 64 0000094A272DC14A3BBCCE0ECE0000000000000BAAA05550CA88822202
  124. 240000000000000FEAA67CC1CBB8344E0E440000000000000DA4A454504B8808820284
  125. 00000000000009A42754D14A3B366E0E64000000000000000000000000000000000000
  126. 000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF70000000000000000001000000000000
  127. 00000000000000000000010000000C000000000000000000000000010000008F000000
  128. 0000000000000000000100000082000000000000000000000000010000008200000000
  129. 0000000000000000010000008200000000000000000000000001000000830000000000
  130. 0000000000000001000000000000000000000000000000000100000001000000000000
  131. 000000000000010000000100000000000000000000000001000000EF00000000000000
  132. 00000000000100000C1170000000000000000000000001000003018100000000000000
  133. 0000000001000080000200000000000000000000000100004000040000000000000000
  134. 0000000100002000080000000000000000000000010000100000100000000000000000
  135. 0000010008000000200000000000000000000001000800000020000000000000000000
  136. 0001000400000040000000000000000000000100040000004000000000000000000000
  137. 01000400000040000000000000000000000100C2008300800C00000000000000000009
  138. BBF200440088BF000000000000000000012A2200280088A2000000000000000000093A
  139. AF002800EBB2000000000000000000090A2200280080A2000000000000000000093A32
  140. 00440080A3000000000000000000010002008300800000000000000000000001000400
  141. 0000400000000000000000000001000400000040000000000000000000000100040000
  142. 0040000000000000000000000100080000002000000000000000000000010008000000
  143. 2000000000000000000000010000100000100000000000000000000001000020000800
  144. 0000000000000000000001000040000400000000000000000000000100008000020000
  145. 00000000000000000001000003018100000000000000000000000100000C1170000000
  146. 000000000000000001000000EF00000000000000000000000001000000010000000000
  147. 0000000000000001000000010000000000000000000000000100000000C00000000000
  148. 00000000000001000000ABF0000000000000000000000001000000AA20000000000000
  149. 000000000001000000AB20000000000000000000000001000000AA2000000000000000
  150. 0000000001000000AB300000000000000000000000010000000000000000FFFFFFFFFF
  151. FFFFFFFFFFFFFFFFFFFFFF7000000000000000000000000000000000000008AAAB9384
  152. 790ECE02D9D566700000000008AAA8A0855B022406544411100000000008A8AB93875F
  153. 0E440ED5C1227000000000009098A0865D02840A544044100000000000909BA384790E
  154. 6402D9D13370000000
  155. END
  156.  
  157.  
  158.